Informational and Advertiser Links for Use in Web Mapping Services

ABSTRACT

Techniques for identifying groups of local features in an image and presenting advertisement information associated with stored images that match one or more features within the group of local features are described. The techniques include providing an image, identifying a region of interest in the image, providing a user-selectable link associated with the region of interest in the image, receiving a request for the region of interest in the image via the user-selectable link, and presenting advertisement information associated with a stored image that matches one or more features within the requested region of interest.

TECHNICAL FIELD

This disclosure is generally related to online advertising.

BACKGROUND

Interactive media (e.g., the Internet) may help improve the targeting ofadvertisements (“ads”) to receptive audiences. Ads can be presented asbanner ads, sets of one or more text boxes, video ads, audio ads, andthe like. For example, some websites provide information searchfunctionality that is based on key words entered by the user seekinginformation. This user query can be an indicator of the type ofinformation of interest to the user. By comparing the user query to alist of key words specified by an advertiser, it is possible to providetargeted ads to the user.

Another form of online advertising is ad syndication, which allowsadvertisers to extend their marketing reach by distributing contextualads to additional partners. For example, third party online publisherscan place an advertiser's text or image ads within or alongside desiredpublisher content to motivate potential customers to seek additionalinformation (e.g., navigate to the advertiser's website, etc.). Anexample of such a system is AdSense™ offered by Google Inc.

In contextual advertising systems (e.g., AdSense™), ads are selected andserved by automated systems based on the content displayed to the userin, for example, a browser window. The displayed content is analyzed todetermine the “context” of the information (e.g., the main topic) sothat ads that best match the context can be targeted to the contentdisplay. In contextual advertising systems such as AdSense, once thecontext of a content display is matched to a set of potentialadvertisements for display, an auction mechanism is used to select oneor more potential advertisements to actually appear on the page.

Using interactive web mapping services, users can navigate a map basedupon an input location. For example, a map of a street address could bemodified in granularity (e.g., zoom in and out) or navigateddirectionally (e.g., pan to the north, east, south, west, etc.). Someweb mapping services also provide the service of requesting drivingdirections between locations. An example web mapping service is GoogleMaps™ offered by Google Inc.

An additional capability provided by some web mapping services caninclude a panoramic view of the street location. For example, a usercould view and/or navigate street-level images within an interactive webmapping service. The street-level images, for example, can be capturedby a camera attached to a vehicle. The street level images can benavigated in a manner similar to the web mapping services, withgranularity and directional navigation options. An example of astreet-level image mapping service is Google Street View™ offered byGoogle Inc.

SUMMARY

According to one general aspect, a method includes providing an image,identifying a region of interest in the image, providing auser-selectable link associated with the region of interest in theimage, receiving a request for the region of interest in the image viathe user-selectable link, and presenting advertisement informationassociated with a stored image that matches features within therequested region of interest.

Implementations may include one or more of the following features. Forexample, identifying the region of interest in the image comprisesanalyzing one or more stored images to locate a stored image thatincludes features within the region of interest. The one or more storedimages comprises images received from a user. Identifying the region ofinterest in the image comprises analyzing a set of global positioningcoordinates associated with the region of interest. The advertisementinformation has an associated maximum bid, and presenting theadvertisement information associated with a stored image that matchesfeatures within the requested region of interest comprises presentingthe advertisement information that is associated with the highest bid.

In another general aspect, a computer-readable medium withcomputer-executable instructions stored thereon performs the method ofproviding an image, identifying a region of interest in the image,providing a user-selectable link associated with the region of interestin the image, receiving a request for the region of interest in theimage via the user-selectable link, and presenting advertisementinformation associated with a stored image that is associated with therequested region of interest.

Implementations may include one or more of the following features. Forexample, identifying the region of interest in the image comprisesanalyzing one or more stored images to locate a stored image thatincludes features within the region of interest. The one or more storedimages comprise images received from a user. Identifying the region ofinterest in the image comprises analyzing a set of global positioningcoordinates associated with the region of interest.

In another general aspect, a method comprises presenting an image havingdiscrete regions of interest, providing a user-selectable linkassociated with one or more of the regions of interest in the image,receiving a request for one of the regions of interest in the image viathe user-selectable link, analyzing one or more stored images to locatea stored image that includes features within the requested region ofinterest, and providing one or more of a link to a content site or anadvertisement associated with the located stored image.

Implementations may include one or more of the following features. Forexample, the method further comprises receiving a bid for the region ofinterest in the image, wherein the received bid is based on the bidassociated with the located stored image. The one or more stored imagescomprises images received from a user.

In another general aspect, a computer-readable medium withcomputer-executable instructions stored thereon performs the method ofpresenting an image having discrete regions of interest, providing auser-selectable link associated with one or more of the regions ofinterest in the image, receiving a request for one of the regions ofinterest in the image via the user-selectable link, analyzing one ormore stored images to locate a stored image that includes one or more ofthe features within the requested region of interest, and providing oneor more of a links to a content site or an advertisement associated withthe located stored image.

Implementations may include one or more of the following features. Forexample, the computer-readable medium performs the additional step ofreceiving a bid for the region of interest in the image, wherein thereceived bid is based on the bid associated with the located storedimage.

The details of one or more embodiments of the invention are set forth inthe accompanying drawings and the description below. Other features,objects, and advantages of the invention will be apparent from thedescription and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 illustrates an example of an environment for implementing animage based ad targeting system.

FIG. 2 is a flow diagram of an example image based ad targeting process.

FIG. 3 is a flow diagram of an example process for bidding in an imagebased ad targeting system.

FIG. 4 is a screen shot of an example user interface for bidding in animage based ad targeting system.

FIG. 5 is a screen shot of a system for providing ads associated withimages in a photo map environment.

FIG. 6 is a block diagram illustrating an example system architecturefor an online advertising data aggregation and data delivery system.

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

FIG. 1 illustrates an example of an environment 100 for implementing animage based ad targeting system. One or more advertisers 102 candirectly or indirectly enter, maintain, and track advertisement (“ad”)information in an advertising management system (AMS) 104. The ads maybe in the form of graphical ads, such as banner ads, text only ads,image ads, audio ads, video ads, ads combining one or more of any suchcomponents, etc. The ads may also include embedded information, such asa links, meta-information, and/or machine-executable instructions. Oneor more users 106 may submit requests for ads to the AMS 104. The AMS104 responds by sending ads to the requesting user 106. Users caninclude publishers which publish content (e.g., Internet websitecontent). A computer network 110, such as a local area network (LAN),wide area network (WAN), the Internet, or a combination thereof,connects the advertisers 102, the AMS 104, and the users 106.

The AMS 104 includes a street view display server 112 which can providea user 106 with an image of a geographic location embedded and/or hotlinked with advertisement information. The images available through thestreet view display server 112 can be used to provide the user withmapping and/or driving directions information. For example, throughinterfacing with a Global Positioning System (GPS) navigational device,the user 106 can receive photographic images from the street viewdisplay server 112, providing the user 106 with a photographic image ofthe present location or a desired destination. The images are storedwithin an image database 114.

The advertisers 102 can upload images to the image database 114 withinthe AMS 104. The image database 114 contains images which can berecognized as groups of features within a photographic image such as animage of a city block. For example, a car has a set of featuresincluding features composing the grill, tires, headlamps, hood, bumpers,windshield, mirrors, doors, windows, trunk, etc. Groups of features,also described as a region of interest (ROI), can be selected fromwithin a geographic photo display (e.g., by hand, through digitalphotographic recognition means, etc.) and added to the image database114. For example, corporate logos, brick and mortar store signs, andproduct images associated with the advertisers 102 can be stored withinthe image database 114.

The AMS 104 can also provide the advertisers 102 with the capability ofbidding on images within the image database 114. For example, theadvertiser 102 can upload one or more images representing a corporatelogo through a bidding server 118, and the advertiser 102 can bid uponthe image(s). The bidding server 118 can locate images similar to theimages uploaded by the advertiser 102. The bidding server 118 cansuggest that the advertiser 102 bid on the similar images as well. Inthe event that an image that the advertiser 102 bid on is recognizedwithin a region of interest in a geographic photo display requested bythe user 106, the street view display server 112 can incorporateadvertisement information From the advertiser 102 within the region ofinterest in the geographic photo display.

In addition to bidding on images within the image database 114, thebidding server 118 can allow the advertisers 102 to place bids uponregions of interest within the geographic photo displays. For example,the advertisers 102 can upload addresses or GPS coordinates of brick andmortar stores and bid upon the region of interest within the geographicphoto displays which include the address of the store. In anotherexample, advertisers 102 can bid for a region of interest within ageographic photo display portraying a popular landmark (e.g., the GoldenGate Bridge). In some implementations, more than one advertiser 102 canplace a bid upon the same image, geographic photo display, and/or regionof interest within a geographic photo display.

In some implementations, the users 106 can request geographic views(e.g., city block, historical landmark, image of a strip mall, currenttraffic conditions on a segment of highway, etc.) from the AMS 104. Forexample, the user 106 can request a street view in relation to visualdriving directions. The street view display server 112 combines therequested content with one or more of the ads provided by theadvertisers 102. The ads can be stored within the AMS 104, received bythe advertisers 102 at the time of the request, or accessed from anotherlocation accessible by the AMS 104 (e.g., via the network 119).

The street view display server 112 compares photographic regions ofinterest with images stored within the image database 114. If the imagesmatch, the street view display server 112 can locate a bid for thatimage within the bids database 116 and link that region of interest toan advertisement. Linking an advertisement to a region of interestwithin a geographic view includes creating a selectable region withinthe geographic view. In other implementations, advertisements (e.g.,banner ads, textual ads) can be embedded within and/or alongside thegeographic view. The embedded ads can also be user selectable. Thecombined image content and advertisement content (e.g., inlineadvertisements, hot-linked image regions, etc.) can be sent to the user106 for presentation in a viewer (e.g., a web browser, a mobile device,a vehicle navigation device, or other content display system).

In some implementations, selecting a hot-linked region or embedded adcan provide the user with navigation to the advertiser's website 108.One or more advertisers 102 can be associated with one or more websites108. For example, an advertiser can promote an Internet-based business,a brick and mortar business, or a business which has both an Internetpresence and brick and mortar establishments.

As can be appreciated from the foregoing, the AMS 104 can serve users106, such as individual electronic devices, web publishers, contentservers and search services. The AMS 104 permits serving of ads targetedto regions of interest located within geographic displays. For example,a network or inter-network may include an advertising management systemserving geographic photos with in-line targeted ads in response torequests from a map and for driving directions service. In someimplementations, the user 106 provides the AMS 104 with an addressingmeans (e.g., street address, GPS coordinates, etc.) for photo selection.In response, the AMS 104 coordinates a street view display of theaddress received with inline advertising and/or embedded advertisinglinks targeted to regions of interest recognized within the street viewdisplay. The street view display server 112 contains geographic displayimages which have already been reviewed, either electronically or byhand, and matched with groups of local features, the group being locatedwithin a region of interest. The features within a region of interest,for example can match one or more features within an image containedwithin the image database 114. Advertisements are coordinated with therecognized feature groups and compiled within the street view displaywhich is returned to the user 106.

FIG. 2 is a flow diagram of an example image based ad targeting process200. The steps of process 200 do not have to occur in a specific orderand at least some steps can occur in parallel. The ad targeting process200 begins with providing a geographic display image (202). The imagecan be provided, for example, to the street view display server 122 (asshown in FIG. 1). The image is retrieved from the image database 114 inresponse to a request from a user 106 for a particular geographiclocation. For example, a user 106 connected to the AMS 104 via thenetwork 110 can request a geographic display corresponding to aparticular region (e.g., GPS coordinates, street address, etc.). Thestreet view display server 112, for example, can retrieve the geographicdisplay image associated with the requested region from the imagedatabase 114.

The image file is analyzed to identify local features (204). Localfeatures are portions or sections of the image file that are visuallydistinguishable. The detection of local features consists of two steps:interest point detection and feature generation. Interest pointdetection addresses the problem of finding visually salient, yet stable,points on images (e.g., the edge and corner of an object, etc.). Commonalgorithms include the Difference of Gaussian (DoG) approach, or theLaplacian of Gaussian (LoG) approach, which are described in C. Schmid,R. Mohrand and C. Bauckhage, Evaluation of Interest Point Detectors,Int'l Journal of Computer Vision, 37 (2), 151-172, 2000(http://perception.inrialpes.fr/Publications/2000/SMB00), which isincorporated herein by reference in its entirety. Once an interest pointis detected, the second step, generally, is to generate features aroundthe interest point. An exemplary approach to generating features aroundthe interest point includes an orientation histogram. Uponidentification of one or more of the local features, the group of localfeatures, also referred to as the region of interest, can be comparedwith stored images (e.g., within the image database 114). For example, acoffee shop logo can be identified from the coffee shop sign. The imagedatabase 114 may contain images that advertisers have selected, or bidon, to associate with one or more ads. In other implementations, anadvertiser could have bid upon a region of interest within the imagefile.

A user-selectable link is provided in relation to the region of interest(206). The link can be associated with an advertiser, for example theadvertiser which placed the highest bid on the image recognized withinthe region of interest. Any portion of the geographic display image inwhich the region of interest is located can be selectable (e.g.,hot-linked). For example, the coffee shop sign and/or the coffee shoplogo within the sign can be hot-linked to an advertisement for thecoffee shop. In other examples, the coffee shop logo can be hot-linkedto menu information, customer reviews, store hours, and/or otherpertinent information.

In other implementations, an empty region within the image can beprovided for populating with links associated with the image and/orregions of interest contained within the image. For example, ahot-linked text ad, banner ad, or other indicator can be provided toallow a user to navigate to further information. The hot-links can beassociated, for example, with regions of interest within the image(e.g., coffee shop logo, etc.) or with information pertinent to thegeneral location portrayed within the geographic display image (e.g., adfor local sports team, etc.).

In some implementations, user-selectable links are visually indicated.For example, a user-selectable region can be outlined, highlighted, orrendered in a brighter or shaded manner as compared to the remainder ofthe image. A user-selectable text link can be underlined, in bold, etc.

A request is received via a user-selectable link for informationregarding a region of interest (step 208). For example, a user touches,clicks on, or otherwise provides input to the device on which thehot-link is displayed to receive further information in regard to theregion of interest. For example, the user could select the coffee shoplogo within a geographic view of a street. Selection of the hot-linknavigates the user to content provided by the AMS 104. The AMS 104coordinates the presentation of information associated withuser-selectable links. In other implementations, the link navigates theuser to the advertiser 102 (e.g., an advertiser's website 108).

Information associated with the selected region of interest is presentedto the use (step 210). The information replaces the display of a portionof the image. For example, the information can be presented within anupper region of the image, presented in place of the entire image, etc.Alternatively, the information can be presented beneath the image,alongside the image, or in a separate display region from the image(e.g., pop-up window). The information can include an advertisement,hours of operation, menu information, customer reviews or ratings, orother information that is pertinent to the region of interest and/or thegeneral location portrayed within the geographic display image. Forexample, an advertisement for the coffee shop associated with the coffeeshop logo can be presented to the user upon selection of the shop logofeature within the image.

The information can be associated with the stored image which matchesone or more features within the region of interest (e.g., an imagestored within the image database 114). For example, the advertiser 102could bid upon an image in the image database 114, and the bid withinthe bid database 116 can be associated with ad content. When a group offeatures within a region of interest is found to match one or morefeatures within the image in the image database 114, the ad contentassociated with the bid for that image can be attached to the region ofinterest by a user-selectable link. The ad content can be stored withinthe AMS 104, a data repository accessible by the AMS 104 (e.g., vianetwork 110), or the advertiser 102, for example.

In some implementations, key words can also be associated with a regionof interest. For example, a region of interest containing an image ofthe Eiffel Tower can be associated with the key words Paris, EiffelTower, Champ de Mars, etc. In this example, an advertiser could bid upona key word such as “Eiffel Tower”. Ad content associated with the keyword bid, for example, could be linked to the region of interestcontaining the image of the Eiffel Tower.

Different types of information can be provided within the sameselectable link. For example, a mouse-over, right click, etc. of aregion can provide a first grouping of information. The first groupingof information can contain options for obtaining additional information.For example, a drop-down menu could be displayed, offering a productlisting, customer reviews, and/or a discount offer for the coffee shopassociated with the user-selectable logo. Selection of one of theoptions from the first grouping of information can provide the user witha second display of information associated with the feature (e.g., menu,coupon code, hours, etc.). Other levels of presentation are possible.Moreover, geolocation can be manual by the advertiser, or it can beautomatic based on the selection of relevant regions of interest by theadvertiser, or it can be automatic based on non-image informationprovided by the advertiser.

FIG. 3 is a flow diagram of an example process flow 300 for bidding inan image based ad targeting system. As described with respect to FIG. 2,advertisers can bid on a particular image in an image database toassociate the image with desired ad content. However, it may bedifficult for an advertiser to determine an appropriate bid amount for aparticular image. To help establish an appropriate bid, the particularimage that an advertiser is interested in may be compared against thedatabase of images to locate similar images. Bids associated with theseimages may then be presented to the advertiser as suggested bids.

An advertiser provides one or more images to bid on (302). Theadvertiser may wish to have a desired ad be presented when a particulargroup of features is presented within an image (e.g., an image of ageographic location such as a city block). Accordingly, the advertisereither selects or provides a desired image or images.

In some implementations, the advertiser selects one or more images froman online database browser interface to the contents of the imagedatabase 114). For example, an advertiser may wish to have anadvertisement for a car dealership appear when a particular make ormodel of vehicle is displayed within an image. The advertiser may browsea database to locate available images of vehicles. In another example,the advertiser may search a database using key words associated withavailable images. When the advertiser has found a suitable vehicle imageor images the advertiser may select them for bidding.

In other implementations, the advertiser already has a desired image orimages and wishes to bid on those images or related images. For example,the advertiser may wish to have a selected ad display when an image of acorresponding logo is displayed. Accordingly, the advertiser may submitone or more images of the desired logo.

Further, the advertiser may optionally annotate the image to highlightdesired local features. Because an image may contain several localfeatures that may not be germane to the advertiser's business, theadvertiser may wish to specify the particular features that theadvertiser wishes to associate with a desired ad. Continuing the examplegiven above, the advertiser may have one or more images of the desiredlogo. Many of the images may feature the logo on cars, or t-shirts, ormay also include objects that the advertiser is not interested inassociating the ad with. Accordingly, the advertiser may annotate theimage to point out or highlight the desired local features of the image.In some implementations, advertisers may circle or highlight the desiredfeatures on the image using a selection tool included in a userinterface, for example.

An image database is searched for images similar to the provided image(304). The database may be searched for images using image and objectrecognition techniques, such as, for example, by finding images thatcontain local descriptors that are similar (e.g., under L2 distance) tothe provided image.

A representative image is analyzed to determine local features. Thelocated local features can then be used to search for similar featureswithin other images, rather than the entire image. Where the user hasannotated the image or images to illustrate desired local features, theidentified local features can be used to search the database. In someimplementations, the advertiser can use key words instead of or inaddition to using an image-based search. For example, the advertisercould search for “car”, “vehicle”, make and/or model names, etc. inlocating additional images of cars.

The advertiser is presented with one or more suggested bids for theimages (306). The bids can be based in part upon bids associated withsimilar images if any have been located. Because an advertiser may notknow how to determine an appropriate bid for a particular image, it maybe helpful to show the advertiser current maximum bids on the identifiedrelated images as a reference. The advertiser may bid on the desiredimage and provide a desired content to associate with the image. In someimplementations, the advertiser may additionally specify a method ofpresenting the content associated with the image. For example, theadvertiser may specify that the information be presented by creating ahot-link in the region of interest associated with the selected image orpresenting a banner ad within the viewer presentation.

In addition, the advertiser may optionally bid on one or more of therelated images (308). For example, in addition to presenting theadvertiser with suggested bids based upon similar images, the advertisercan be presented with the option of bidding on one or more similarimages. The current highest bid associated with each image may beprovided to the advertiser to aid in bidding. For example, each similarimage can be provided to the advertiser within a display along with adollar amount bid associated with each image. The advertiser can thenplace a bid for each desired image from the image database. Theadvertiser may search for images to one or more of the database imagesdisplayed.

FIG. 4 is a screen shot of an example user interface 400 for bidding inan image based ad targeting system. Using the user interface 400, anadvertiser may bid to have an ad or ads associated with a selectedimage. The associated ad may then be presented when the selected imageappears as a group of features within a region of interest in an imageprovided to a user (e.g., geographic display image).

As shown in window 402, the advertiser has selected an image of acomputer to bid on. In some implementations, the advertiser presents oruploads an image. Alternatively, the advertiser may have selected theimage from a database of images by browsing the database of images orsearching the database of images using one or more key words such as,for example, “computer”, “notebook”, and/or “laptop”.

Based on the selected image, one or more similar images are identifiedand presented to the advertiser in window 404. In order to help theadvertiser determine an appropriate bid for the selected image, one ormore similar images that have received bids are displayed along withtheir current maximum bid. As shown in window 404, three images ofcomputer's have been displayed. The images have received maximum bids offive, seven, and nine dollars.

Using the displayed maximum bids as guidance, the advertiser maydetermine an appropriate bid for the selected image. The advertiser mayenter the bid in the text box displayed in window 402 and submit theentered bid by pressing the button labeled “Bid”, for example.

Further, the advertiser may make additional bids on one or more of thedisplayed images. After viewing one or more of the similar imagesdisplayed in window 404, the advertiser may like to place bids on thedisplayed similar images instead of, or in addition to, the selectedimage. Accordingly, the advertiser may enter the bids in the text boxesunderneath each of the similar images in window 404.

FIG. 5 is a screen shot 500 of a system for providing ads associatedwith images in a photo map environment. The system, for example, canprovide image-based driving directions within an internet web-based toolor a vehicle navigation tool. The screen shot 500 portrays threebuildings and a car. The leftmost building 502 includes a logo of theOPQ Company. A car 504 is marked with the OPQ logo as well. The building502 and/or the car 504 can contain hot-links, providing a user withaccess to information regarding the OPQ Company when either the building502 or the car 504 is selected. Additionally, a hot link to informationregarding the OPQ Company (e.g., banner ad, text, etc.) can be presentedwithin a presentation area 506.

An advertiser associated with the OPQ Company bids upon one or moreversions of the OPQ logo. An advertiser can provide more than oneversion of a logo to aid in feature matching. Different versions of asingle item such as a logo can aid in feature matching between imagesstored within an advertising management system and features found withina region of interest in a geographic display (e.g., the street viewdisplay presented within screen shot 500). For example, the same logomay appear differently to feature matching software when displayed as aneon building sign versus a screen print on a vehicle exterior. Relativesize (e.g., bold vs. narrow type), color, texture, illumination, angleof view, material (e.g., wood, metal, fabric, etc.), can all have aneffect upon the perception of the features. In another example, the OPQCompany may have multiple versions or styles of logo. In this case, eachversion can be uploaded to the AMS to aid in feature matching. Theadvertiser can place one bid regardless of the logo image, oralternatively, the advertiser can vary bids depending upon the versionof the logo image. For example, the advertiser could bid a greateramount for the neon store sign version of a logo versus a wooden parkbench version of the same logo.

Selection of the building 502 and/or the car 504 results in adinformation displayed within the presentation area 506. For example,selection of the car 504 can result in an advertisement for OPQ Companybeing displayed within the presentation area 506. The advertisementinformation provided within the presentation are 506 can be interactive.

The advertisement information provided via the hot-link can depend uponthe region of interest selected. For example, selecting a hot-linkassociated with a region of interest matching the neon store signversion of the OPQ Company logo may provide the user with informationregarding the OPQ Company in general, while selecting a hot-linkassociated with the region of interest matching vehicle logo may providethe user with information regarding a vehicle model manufactured by theOPQ Company, a courier division of the OPQ Company, etc.

In some implementations, more than one hot-link can be provided to morethan one advertiser within a single image. For example, the OPQ Companyvehicle could be parked outside of the RST Company building. Ads forboth the OPQ Company and the RST Company, for example, can be hot-linkedinto the screen shot 500.

FIG. 6 is a block diagram illustrating an example system architecturefor an online advertising data aggregation and statistical data deliverysystem, such as a reporting system. The system architecture 600 includesone or more processors 602, one or more network communication interfaces604, databases 604 and 610, an administrative computer 608, memory 612,and a data bus 614 interconnecting these components.

The administrative computer 608 may include input devices, such as akeyboard and mouse, and output devices, such as a display (not shown).From the administrative computer 608, an administrative computer mayadminister the aggregation and reporting system.

Databases 604 and 610 may store advertisement reference data andaggregated advertising data, respectively. The advertisement referencedata includes various information associated with advertisements, suchas the type of advertisement, key words to which the advertisements aretargeted, and so forth. The aggregated data may be presented toadvertisers in reports generated by the system.

Memory or computer readable medium 612 may store an operating system 616for performing system functions, a network communication module 618 forcommunicating with other computers or devices through one or morenetworks, an ad data filter 620 (e.g., spam filter) for filteringadvertising data, an ad reference data look-up engine 622 for retrievingadvertisement reference data from database 604, an ad data aggregator624 for aggregating advertising data and applying cut-off criteria tothe advertising data, an ad data reporting engine 626 for receivingrequests advertising data reports, generating such reports, and sendingsuch reports to the requestors, or presenting the statistical data tothe user via the user interface so that the user may modify itsadvertising placement choices in the manner described above, and a filesystem 628 for storing filtered advertising data pending furtherprocessing.

The disclosed and other implementations and the functional operationsdescribed in this description can be implemented in digital electroniccircuitry, or in computer software, firmware, or hardware, including thestructures disclosed in this specification and their structuralequivalents, or in combinations of one or more of them. The disclosedand other implementations can be implemented as one or more computerprogram products, i.e., one or more modules of computer programinstructions encoded on a computer-readable medium for execution by, orto control the operation of, data processing apparatus. Thecomputer-readable medium can be a machine-readable storage device, amachine-readable storage substrate, a memory device, a composition ofmatter effecting a machine-readable propagated signal, or a combinationof one or more them. The term “data processing apparatus” encompassesall apparatus, devices, and machines for processing data, including byway of example a programmable processor, a computer, or multipleprocessors or computers. The apparatus can include, in addition tohardware, code that creates an execution environment for the computerprogram in question, e.g., code that constitutes processor firmware, aprotocol stack, a database management system, an operating system, or acombination of one or more of them. A propagated signal is anartificially generated signal, e.g., a machine-generated electrical,optical, or electromagnetic signal, that is generated to encodeinformation for transmission to suitable receiver apparatus.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, and it can bedeployed in any form, including as a stand-alone program or as a module,component, subroutine, or other unit suitable for use in a computingenvironment. A computer program does not necessarily correspond to afile in a file system. A program can be stored in a portion of a filethat holds other programs or data (e.g., one or more scripts stored in amarkup language document), in a single file dedicated to the program inquestion, or in multiple coordinated files (e.g., files that store oneor more modules, sub-programs, or portions of code). A computer programcan be deployed to be executed on one computer or on multiple computersthat are located at one site or distributed across multiple sites andinterconnected by a communication network.

The processes and logic flows described in this description can beperformed by one or more programmable processors executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. The essential elements of a computer area processor for performing instructions and one or more memory devicesfor storing instructions and data. Generally, a computer will alsoinclude, or be operatively coupled to receive data from or transfer datato, or both, one or more mass storage devices for storing data, e.g.,magnetic, magneto-optical disks, or optical disks. However, a computerneed not have such devices. Computer-readable media suitable for storingcomputer program instructions and data include all forms of non-volatilememory, media- and memory devices, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor andthe memory can be supplemented by, or incorporated in, special purposelogic circuitry.

To provide for interaction with a user, the disclosed techniques can beimplemented on a computer having a display device, e.g., a CRT (cathoderay tube) or LCD (liquid crystal display) monitor, for displayinginformation to the user and a keyboard and a pointing device, e.g., amouse or a trackball, by which the user can provide input to thecomputer. Other kinds of devices can be used to provide for interactionwith a user as well; for example, feedback provided to the user can beany form of sensory feedback, e.g., visual feedback, auditory feedback,or tactile feedback; and input from the user can be received in anyform, including acoustic, speech, or tactile input.

The disclosed techniques can be implemented in computing system thatincludes a back-end component, e.g., as a data server, or that includesa middleware component, e.g., an application server, or that includes afront-end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation of what is disclosed here, or any combination of one ormore such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (“LAN”) and a widearea network (“WAN”), e.g., the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this description contains many specifics, these should not beconstrued as limitations on the scope of what being claims or of whatmay be claimed, but rather as descriptions of features specific toparticular implementations. Certain features that are described in thisdescription in the context of separate implementations can also beimplemented in combination in a single implementation. Conversely,various features that are described in the context of a singleimplementation can also be implemented in multiple implementationsseparately or in any suitable subcombination. Moreover, althoughfeatures may be described above as acting in certain combinations andeven initially claimed as such, one or more features from a claimedcombination can in some cases be excised from the combination, and theclaimed combination may be directed to a subcombination or variation ofa subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understand as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmaybe advantageous. Moreover, the separation of various systemcomponents in the implementations described above should not beunderstood as requiring such separation in all implementations, and itshould be understood that the described program components and systemscan generally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular implementations have been described. Otherimplementations are within the scope of the following claims.

1-9. (canceled)
 10. A computer-implemented method, comprising:receiving, by one or more computers, a bid including (i) data indicatinga particular visual feature, and (ii) a link to an advertisement forplacement within a panoramic image that includes the particular visualfeature; obtaining, by the one or more computers, a particular panoramicimage in response to a request from a user; determining, by the one ormore computers, a location of the obtained particular panoramic imagethat includes the particular visual feature indicated by the bid; inresponse to determining the location of the obtained particularpanoramic image that includes the particular visual feature,determining, by the one or more computers, that the bid has beenselected as a winning bid in a selection process; in response todetermining that the bid has been selected as the winning bid, includingthe link to the advertisement at the location of the obtained particularpanoramic image that includes the particular visual feature indicated bythe bid; and providing, by the one or more computers, the modifiedobtained particular panoramic image for display. 11-18. (canceled) 19.The method of claim 10, wherein the link to the advertisement forplacement within the panoramic image that includes the particular visualfeature references a page that provides one of mapping and drivingdirections.
 20. The method of claim 10, wherein including the link tothe advertisement at the location of the obtained particular panoramicimage that includes the particular visual feature indicated by the bidincludes selecting a visual indication for the link to the advertisementthat contrasts with a visual indication of the particular visualfeature.
 21. The method of claim 10, further comprising: providing themodified obtained panoramic image for display to the user; and upon theuser selecting the link to the advertisement, providing a first group ofinformation for display to the user.
 22. The method of claim 21, whereinthe first group of information includes options for obtaining additionalinformation associated with the particular visual feature indicated bythe bid that is included in the modified obtained particular panoramicimage.
 23. A system comprising: one or more computers and one or morestorage devices storing instructions that are operable, when executed bythe one or more computers, to cause the one or more computers to performoperations comprising: receiving a bid including (i) data indicating aparticular visual feature, and (ii) a link to an advertisement forplacement within a panoramic image that includes the particular visualfeature; obtaining a particular panoramic image in response to a requestfrom a user; determining a location of the obtained particular panoramicimage that includes the particular visual feature indicated by the bid;in response to determining the location of the obtained particularpanoramic image that includes the particular visual feature, determiningthat the bid has been selected as a winning bid in a selection process;in response to determining that the bid has been selected as the winningbid, including the link to the advertisement at the location of theobtained panoramic image that includes the particular visual featureindicated by the bid; and providing the modified obtained panoramicimage for display. 24-25. (canceled)
 26. The system of claim 23, whereinthe link to the advertisement for placement within the panoramic imagethat includes the particular visual feature references a page thatprovides one of mapping and driving directions.
 27. The system of claim23, wherein including the link to the advertisement at the location ofthe obtained particular panoramic image that includes the particularvisual feature indicated by the bid includes selecting a visualindication for the link to the advertisement that contrasts with avisual indication of the particular visual feature.
 28. The system ofclaim 23, wherein the operations further comprise: providing themodified obtained panoramic image for display to the user; and upon theuser selecting the link to the advertisement, providing a first group ofinformation for display to the user.
 29. The system of claim 28, whereinthe first group of information includes options for obtaining additionalinformation associated with the particular visual feature indicated bythe bid that is included in the modified obtained particular panoramicimage.
 30. A non-transitory computer-readable medium storing softwarecomprising instructions executable by one or more computers which, uponsuch execution, cause the one or more computers to perform operationscomprising: receiving a bid including (i) data indicating a particularvisual feature, and (ii) a link to an advertisement for placement withina panoramic image that includes the particular visual feature; obtaininga particular panoramic image in response to a request from a user;determining a location of the obtained particular panoramic image thatincludes the particular visual feature indicated by the bid; in responseto determining the location of the obtained particular panoramic imagethat includes the particular visual feature, determining that the bidhas been selected as a winning bid in a selection process; in responseto determining that the bid has been selected as the winning bid,including the link to the advertisement at the location of the obtainedpanoramic image that includes the particular visual feature indicated bythe bid; and providing the modified obtained panoramic image fordisplay. 31-32. (canceled)
 33. The medium of claim 30, wherein the linkto the advertisement for placement within the panoramic image thatincludes the particular visual feature references a page that providesone of mapping and driving directions.
 34. The medium of claim 30,wherein including the link to the advertisement at the location of theobtained particular panoramic image that includes the particular visualfeature indicated by the bid includes selecting a visual indication forthe link to the advertisement that contrasts with a visual indication ofthe particular visual feature.
 35. The medium of claim 30, wherein theoperations further comprise: providing the modified obtained panoramicimage for display to the user; and upon the user selecting the link tothe advertisement, providing a first group of information for display tothe user.
 36. The medium of claim 35, wherein the first group ofinformation includes options for obtaining additional informationassociated with the particular visual feature indicated by the bid thatis included in the modified obtained particular panoramic image.
 37. Themethod of claim 10, wherein determining that the bid has been selectedas the winning bid in the selection process comprises determining thatthe bid has been selected from among one or more other bids that eachinclude (i) data indicating the particular visual feature, and (ii) alink to an advertisement for placement within a panoramic image thatincludes the particular visual feature.
 38. The system of claim 23,wherein determining that the bid has been selected as the winning bid inthe selection process comprises determining that the bid has beenselected from among one or more other bids that each include (i) dataindicating the particular visual feature, and (ii) a link to anadvertisement for placement within a panoramic image that includes theparticular visual feature.
 39. The medium of claim 30, whereindetermining that the bid has been selected as the winning bid in theselection process comprises determining that the bid has been selectedfrom among one or more other bids that each include (i) data indicatingthe particular visual feature, and (ii) a link to an advertisement forplacement within a panoramic image that includes the particular visualfeature.